/** @jsxImportSource @emotion/react */
import {render施工类别, render设备品种, render设备类别} from "../../common/render";
import {CCell, Cell, Table, TableBody, TableHead, TableRow, Text} from "customize-easy-ui-component";
import * as React from "react";
import {SimpleImg} from "../../../comp/Image";
import Img_ReachBeyond from "./reachBeyond.png";

export const render层站门 = {
    view: (orc: any) => {
        return <div css={{display: 'flex', justifyContent: 'space-around', alignItems: 'center'}}>
            <Text>{orc.电梯层数} 层</Text><Text>{orc.电梯站数} 站</Text><Text>{orc.电梯门数} 门</Text>
        </div>
    },
};
//不考虑唯一性校验
export const config设备 = [
  [['安装改造重大修理单位名称', '新安改单']],
  [['施工单位生产许可证(受理决定书)编号', '施许可号'], ['安装改造重大修理单位负责人', '安单负责']],
  [['使用单位名称', '_$使用单位'],  ],
  [['使用单位地址', '_$使用单位地址'],  ],
  [['使用单位联系人', '_$单位联系人'], ['使用单位安全管理人员', '安全员']],
  [['制造单位名称', '_$制造单位'] ],
    //【名字对调了】旧平台的设备型号：实际==’型号规格‘；，   ？  ：多余了：设备型号; @保留一个
    //原pdf版有： 设备型号 :对应原始记录“['设备型号','设备型'],” ；   制造单位特种设备生产许可证编号，
  [['制造单位生产许可证编号', '生产许号'], ['型号规格', '_$型号'], ],
  [['设备类别', '_$设备类别',render设备类别], ['设备品种', '_$设备品种',render设备品种], ],
  [['产品编号', '_$出厂编号'], ['设备代码', '_$设备代码'], ],
  [['制造日期', '_$制造日期'], ['投入使用日期', '_$投用日期'] ],
  [['施工类别', {}, render施工类别], ['设计使用年限','_$设计年限', '年'], ],
  [['使用地点', '_$设备使用地点'] ],
  //性能参数;  #【代码耦合点】 拆分位置
  [['额定起重量','_$额定起重量','t'], ['额定速度','_$额定速度','m/s'], ],
  [['提升高度', '_$提升高度','m'], ['层数', '_$电梯层数',render层站门] ],
  [['其他主要参数',{n:'其他参数',t:'m'}], ],
];

//【特别处理】 附录 7的：内置render
function DataTable7() {
  const data = [
      ['≤200',1,1000,3.6],
      [300,1.35,1200,4.2],
      [400,1.76,1500,5.1],
      [500, 2.1, 1600, 5.35],
      [600, 2.4, 1800, 5.82],
      [700, 2.7, 2000, 6.3],
      [800, 3, 2500, 7.5],
      [900, 3.3, 3000, 8.7],  ];
  return (
      <Text css={{display: 'block', textAlign: 'center', margin: 'auto', "@media print": {maxWidth: '80%'}}}>
        表1货厢最大有效面积和额定起重量关系
        <Table tight miniw={800}>
          <TableHead>
            <TableRow><CCell>额定起重量kg</CCell><CCell>货厢最大有效面积㎡</CCell><CCell>额定起重量kg</CCell><CCell>货厢最大有效面积㎡</CCell></TableRow>
          </TableHead>
          <TableBody>
            {data.map((item, index) => (
                <TableRow key={index}>
                  <CCell>{item[0]}</CCell>
                  <CCell>{item[1]}</CCell>
                  <CCell>{item[2]}</CCell>
                  <CCell>{item[3]}</CCell>
                </TableRow>
            ))}
            <TableRow><Cell colSpan={4}>注：对中间起重量其面积由现行插入法确定</Cell></TableRow>
          </TableBody>
        </Table>
      </Text>
  );
}
export const areaCapacity=DataTable7();
//附录 10 ：A4 正好一张； 默认不改字体 最大压缩TableRow 只能=29px;
function DataTable10() {
  const data = [
        [2700, 0, 0, 0],
        [2600, 900, 800, 700],
        [2400, 1100, 1000, 900],
        [2200, 1300, 1200, 1000],
        [2000, 1400, 1300,1100],
        [1800, 1500, 1400, 1100],
        [1600, 1500, 1400, 1100],
        [1400, 1500, 1400, 1100],
        [1200, 1500, 1400, 1100],
        [1000, 1500, 1400, 1000],
        [800, 1500, 1300, 900],
        [600, 1400, 1300, 800],
        [400, 1400, 1200, 400],
        [200, 1200, 900, 0],
        [0, 1100, 500, 0],  ];
  //【注意】<Table 放在 <Text 里面导致文本格式的lineHeight变动，Table没法缩小行高度。字体决定row高度;
  return <>
    <SimpleImg url={Img_ReachBeyond} css={{width: '100%', maxWidth: '25rem'}}/>
    1-上肢触及区域；2-上肢触及不到区域（危险区）；h<sub>h</sub>-危险区中离上肢触及区域最近的高度；h<sub>ps</sub>-保
      护结构高度；s<sub>h</sub>-危险区中离上肢触及区域最近点的水平安全距离
    <Text css={{display: 'block', textAlign: 'center', margin: 'auto', "@media print": {maxWidth: '90%'}}}>
      <div css={{display: 'flex', justifyContent: 'space-between'}}>
        <Text>表2 越过保护结构触及</Text><Text>单位：mm</Text>
      </div>
    </Text>
    <Table css={{margin: 'auto', "@media print": {maxWidth: '90%'}}} tight miniw={800}>
      <TableHead>
          <TableRow><CCell rowSpan={3}>h<sub>h</sub></CCell><CCell colSpan={3}>保护结构高度h<sub>ps</sub>a,b</CCell></TableRow>
          <TableRow><CCell>1000</CCell><CCell>1200</CCell><CCell>1400</CCell></TableRow>
          <TableRow><CCell colSpan={3}>危险区离上肢触及区域最近点的水平安全距离s<sub>h</sub></CCell></TableRow>
      </TableHead>
      <TableBody rheight={14}>
          {data.map((item, index) => (
              <TableRow key={index}>
                  <CCell>{item[0]}</CCell>
                  <CCell>{item[1]}</CCell>
                  <CCell>{item[2]}</CCell>
                  <CCell>{item[3]}</CCell>
              </TableRow>
          ))}
          <TableRow><Cell colSpan={4}>a 保护结构高度小于1000mm，不能有效地限制身体运动，因此本表未予考虑。<br/>
              b 保护结构高度小于1400mm，如果没有附加保护措施，不宜采用。</Cell></TableRow>
      </TableBody>
    </Table>
  </>;
}
export const reachBeyond=DataTable10();
